package com.ruoyi.eqmonitor.smdtv.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * 超图总表
 */
@TableName(value ="smregister")
@Data
public class Smregister implements Serializable {
    /**
     * 
     */
    @TableId
    private Integer smdatasetid;

    /**
     * 
     */
    private String smdatasetname;

    /**
     * 
     */
    private String smtablename;

    /**
     * 
     */
    private String smindextablename;

    /**
     * 
     */
    private String smsubtablename;

    /**
     * 
     */
    private Integer smparentid;

    /**
     * 
     */
    private String smissub;

    /**
     * 
     */
    private Integer smdatasettype;

    /**
     * 
     */
    private Integer smrecordcount;

    /**
     * 
     */
    private Double smleft;

    /**
     * 
     */
    private Double smright;

    /**
     * 
     */
    private Double smtop;

    /**
     * 
     */
    private Double smbottom;

    /**
     * 
     */
    private Double smindextype;

    /**
     * 
     */
    private Integer smindexlevel;

    /**
     * 
     */
    private Double smindexleft;

    /**
     * 
     */
    private Double smindexright;

    /**
     * 
     */
    private Double smindextop;

    /**
     * 
     */
    private Double smindexbottom;

    /**
     * 
     */
    private Double smminz;

    /**
     * 
     */
    private Double smmaxz;

    /**
     * 
     */
    private Integer smdtversion;

    /**
     * 
     */
    private Integer smoption;

    /**
     * 
     */
    private Integer smenctype;

    /**
     * 
     */
    private String smdescription;

    /**
     * 
     */
    private String smextinfo;

    /**
     * 
     */
    private Double smtolerancefuzzy;

    /**
     * 
     */
    private Double smtolerancedangle;

    /**
     * 
     */
    private Double smtolerancenodesnap;

    /**
     * 
     */
    private Double smtolerancesmallpolygon;

    /**
     * 
     */
    private Double smtolerancegrain;

    /**
     * 
     */
    private Integer smmaxgeometrysize;

    /**
     * 
     */
    private Integer smoncefetchcount;

    /**
     * 
     */
    private Integer smoptimizecount;

    /**
     * 
     */
    private Double smoptimizeratio;

    /**
     * 
     */
    private Date smcreatetime;

    /**
     * 
     */
    private Date smlastupdate;

    /**
     * 
     */
    private String smcreator;

    /**
     * 
     */
    private byte[] smthumb;

    /**
     * 
     */
    private byte[] smprojectinfo;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        Smregister other = (Smregister) that;
        return (this.getSmdatasetid() == null ? other.getSmdatasetid() == null : this.getSmdatasetid().equals(other.getSmdatasetid()))
            && (this.getSmdatasetname() == null ? other.getSmdatasetname() == null : this.getSmdatasetname().equals(other.getSmdatasetname()))
            && (this.getSmtablename() == null ? other.getSmtablename() == null : this.getSmtablename().equals(other.getSmtablename()))
            && (this.getSmindextablename() == null ? other.getSmindextablename() == null : this.getSmindextablename().equals(other.getSmindextablename()))
            && (this.getSmsubtablename() == null ? other.getSmsubtablename() == null : this.getSmsubtablename().equals(other.getSmsubtablename()))
            && (this.getSmparentid() == null ? other.getSmparentid() == null : this.getSmparentid().equals(other.getSmparentid()))
            && (this.getSmissub() == null ? other.getSmissub() == null : this.getSmissub().equals(other.getSmissub()))
            && (this.getSmdatasettype() == null ? other.getSmdatasettype() == null : this.getSmdatasettype().equals(other.getSmdatasettype()))
            && (this.getSmrecordcount() == null ? other.getSmrecordcount() == null : this.getSmrecordcount().equals(other.getSmrecordcount()))
            && (this.getSmleft() == null ? other.getSmleft() == null : this.getSmleft().equals(other.getSmleft()))
            && (this.getSmright() == null ? other.getSmright() == null : this.getSmright().equals(other.getSmright()))
            && (this.getSmtop() == null ? other.getSmtop() == null : this.getSmtop().equals(other.getSmtop()))
            && (this.getSmbottom() == null ? other.getSmbottom() == null : this.getSmbottom().equals(other.getSmbottom()))
            && (this.getSmindextype() == null ? other.getSmindextype() == null : this.getSmindextype().equals(other.getSmindextype()))
            && (this.getSmindexlevel() == null ? other.getSmindexlevel() == null : this.getSmindexlevel().equals(other.getSmindexlevel()))
            && (this.getSmindexleft() == null ? other.getSmindexleft() == null : this.getSmindexleft().equals(other.getSmindexleft()))
            && (this.getSmindexright() == null ? other.getSmindexright() == null : this.getSmindexright().equals(other.getSmindexright()))
            && (this.getSmindextop() == null ? other.getSmindextop() == null : this.getSmindextop().equals(other.getSmindextop()))
            && (this.getSmindexbottom() == null ? other.getSmindexbottom() == null : this.getSmindexbottom().equals(other.getSmindexbottom()))
            && (this.getSmminz() == null ? other.getSmminz() == null : this.getSmminz().equals(other.getSmminz()))
            && (this.getSmmaxz() == null ? other.getSmmaxz() == null : this.getSmmaxz().equals(other.getSmmaxz()))
            && (this.getSmdtversion() == null ? other.getSmdtversion() == null : this.getSmdtversion().equals(other.getSmdtversion()))
            && (this.getSmoption() == null ? other.getSmoption() == null : this.getSmoption().equals(other.getSmoption()))
            && (this.getSmenctype() == null ? other.getSmenctype() == null : this.getSmenctype().equals(other.getSmenctype()))
            && (this.getSmdescription() == null ? other.getSmdescription() == null : this.getSmdescription().equals(other.getSmdescription()))
            && (this.getSmextinfo() == null ? other.getSmextinfo() == null : this.getSmextinfo().equals(other.getSmextinfo()))
            && (this.getSmtolerancefuzzy() == null ? other.getSmtolerancefuzzy() == null : this.getSmtolerancefuzzy().equals(other.getSmtolerancefuzzy()))
            && (this.getSmtolerancedangle() == null ? other.getSmtolerancedangle() == null : this.getSmtolerancedangle().equals(other.getSmtolerancedangle()))
            && (this.getSmtolerancenodesnap() == null ? other.getSmtolerancenodesnap() == null : this.getSmtolerancenodesnap().equals(other.getSmtolerancenodesnap()))
            && (this.getSmtolerancesmallpolygon() == null ? other.getSmtolerancesmallpolygon() == null : this.getSmtolerancesmallpolygon().equals(other.getSmtolerancesmallpolygon()))
            && (this.getSmtolerancegrain() == null ? other.getSmtolerancegrain() == null : this.getSmtolerancegrain().equals(other.getSmtolerancegrain()))
            && (this.getSmmaxgeometrysize() == null ? other.getSmmaxgeometrysize() == null : this.getSmmaxgeometrysize().equals(other.getSmmaxgeometrysize()))
            && (this.getSmoncefetchcount() == null ? other.getSmoncefetchcount() == null : this.getSmoncefetchcount().equals(other.getSmoncefetchcount()))
            && (this.getSmoptimizecount() == null ? other.getSmoptimizecount() == null : this.getSmoptimizecount().equals(other.getSmoptimizecount()))
            && (this.getSmoptimizeratio() == null ? other.getSmoptimizeratio() == null : this.getSmoptimizeratio().equals(other.getSmoptimizeratio()))
            && (this.getSmcreatetime() == null ? other.getSmcreatetime() == null : this.getSmcreatetime().equals(other.getSmcreatetime()))
            && (this.getSmlastupdate() == null ? other.getSmlastupdate() == null : this.getSmlastupdate().equals(other.getSmlastupdate()))
            && (this.getSmcreator() == null ? other.getSmcreator() == null : this.getSmcreator().equals(other.getSmcreator()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getSmdatasetid() == null) ? 0 : getSmdatasetid().hashCode());
        result = prime * result + ((getSmdatasetname() == null) ? 0 : getSmdatasetname().hashCode());
        result = prime * result + ((getSmtablename() == null) ? 0 : getSmtablename().hashCode());
        result = prime * result + ((getSmindextablename() == null) ? 0 : getSmindextablename().hashCode());
        result = prime * result + ((getSmsubtablename() == null) ? 0 : getSmsubtablename().hashCode());
        result = prime * result + ((getSmparentid() == null) ? 0 : getSmparentid().hashCode());
        result = prime * result + ((getSmissub() == null) ? 0 : getSmissub().hashCode());
        result = prime * result + ((getSmdatasettype() == null) ? 0 : getSmdatasettype().hashCode());
        result = prime * result + ((getSmrecordcount() == null) ? 0 : getSmrecordcount().hashCode());
        result = prime * result + ((getSmleft() == null) ? 0 : getSmleft().hashCode());
        result = prime * result + ((getSmright() == null) ? 0 : getSmright().hashCode());
        result = prime * result + ((getSmtop() == null) ? 0 : getSmtop().hashCode());
        result = prime * result + ((getSmbottom() == null) ? 0 : getSmbottom().hashCode());
        result = prime * result + ((getSmindextype() == null) ? 0 : getSmindextype().hashCode());
        result = prime * result + ((getSmindexlevel() == null) ? 0 : getSmindexlevel().hashCode());
        result = prime * result + ((getSmindexleft() == null) ? 0 : getSmindexleft().hashCode());
        result = prime * result + ((getSmindexright() == null) ? 0 : getSmindexright().hashCode());
        result = prime * result + ((getSmindextop() == null) ? 0 : getSmindextop().hashCode());
        result = prime * result + ((getSmindexbottom() == null) ? 0 : getSmindexbottom().hashCode());
        result = prime * result + ((getSmminz() == null) ? 0 : getSmminz().hashCode());
        result = prime * result + ((getSmmaxz() == null) ? 0 : getSmmaxz().hashCode());
        result = prime * result + ((getSmdtversion() == null) ? 0 : getSmdtversion().hashCode());
        result = prime * result + ((getSmoption() == null) ? 0 : getSmoption().hashCode());
        result = prime * result + ((getSmenctype() == null) ? 0 : getSmenctype().hashCode());
        result = prime * result + ((getSmdescription() == null) ? 0 : getSmdescription().hashCode());
        result = prime * result + ((getSmextinfo() == null) ? 0 : getSmextinfo().hashCode());
        result = prime * result + ((getSmtolerancefuzzy() == null) ? 0 : getSmtolerancefuzzy().hashCode());
        result = prime * result + ((getSmtolerancedangle() == null) ? 0 : getSmtolerancedangle().hashCode());
        result = prime * result + ((getSmtolerancenodesnap() == null) ? 0 : getSmtolerancenodesnap().hashCode());
        result = prime * result + ((getSmtolerancesmallpolygon() == null) ? 0 : getSmtolerancesmallpolygon().hashCode());
        result = prime * result + ((getSmtolerancegrain() == null) ? 0 : getSmtolerancegrain().hashCode());
        result = prime * result + ((getSmmaxgeometrysize() == null) ? 0 : getSmmaxgeometrysize().hashCode());
        result = prime * result + ((getSmoncefetchcount() == null) ? 0 : getSmoncefetchcount().hashCode());
        result = prime * result + ((getSmoptimizecount() == null) ? 0 : getSmoptimizecount().hashCode());
        result = prime * result + ((getSmoptimizeratio() == null) ? 0 : getSmoptimizeratio().hashCode());
        result = prime * result + ((getSmcreatetime() == null) ? 0 : getSmcreatetime().hashCode());
        result = prime * result + ((getSmlastupdate() == null) ? 0 : getSmlastupdate().hashCode());
        result = prime * result + ((getSmcreator() == null) ? 0 : getSmcreator().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", smdatasetid=").append(smdatasetid);
        sb.append(", smdatasetname=").append(smdatasetname);
        sb.append(", smtablename=").append(smtablename);
        sb.append(", smindextablename=").append(smindextablename);
        sb.append(", smsubtablename=").append(smsubtablename);
        sb.append(", smparentid=").append(smparentid);
        sb.append(", smissub=").append(smissub);
        sb.append(", smdatasettype=").append(smdatasettype);
        sb.append(", smrecordcount=").append(smrecordcount);
        sb.append(", smleft=").append(smleft);
        sb.append(", smright=").append(smright);
        sb.append(", smtop=").append(smtop);
        sb.append(", smbottom=").append(smbottom);
        sb.append(", smindextype=").append(smindextype);
        sb.append(", smindexlevel=").append(smindexlevel);
        sb.append(", smindexleft=").append(smindexleft);
        sb.append(", smindexright=").append(smindexright);
        sb.append(", smindextop=").append(smindextop);
        sb.append(", smindexbottom=").append(smindexbottom);
        sb.append(", smminz=").append(smminz);
        sb.append(", smmaxz=").append(smmaxz);
        sb.append(", smdtversion=").append(smdtversion);
        sb.append(", smoption=").append(smoption);
        sb.append(", smenctype=").append(smenctype);
        sb.append(", smdescription=").append(smdescription);
        sb.append(", smextinfo=").append(smextinfo);
        sb.append(", smtolerancefuzzy=").append(smtolerancefuzzy);
        sb.append(", smtolerancedangle=").append(smtolerancedangle);
        sb.append(", smtolerancenodesnap=").append(smtolerancenodesnap);
        sb.append(", smtolerancesmallpolygon=").append(smtolerancesmallpolygon);
        sb.append(", smtolerancegrain=").append(smtolerancegrain);
        sb.append(", smmaxgeometrysize=").append(smmaxgeometrysize);
        sb.append(", smoncefetchcount=").append(smoncefetchcount);
        sb.append(", smoptimizecount=").append(smoptimizecount);
        sb.append(", smoptimizeratio=").append(smoptimizeratio);
        sb.append(", smcreatetime=").append(smcreatetime);
        sb.append(", smlastupdate=").append(smlastupdate);
        sb.append(", smcreator=").append(smcreator);
        sb.append(", smthumb=").append(smthumb);
        sb.append(", smprojectinfo=").append(smprojectinfo);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}